ZPL: An Array Sublanguage
نویسندگان
چکیده
The notion of isolating the \common case" is a well known computer science principle. This paper describes ZPL, a language that treats data parallelism as a common case of MIMD parallelism. This separation of concerns has many bene ts. It allows us to de ne a clean and concise language for describing data parallel computations, and this in turn leads to e cient parallel execution. Our particular language also provides mechanisms for handling boundary conditions. We introduce the concepts, constructs and semantics of our new language, and give a simple example that contrasts ZPL with other data parallel languages.
منابع مشابه
Factor-Join: A Unique Approach to Compiling Array Languages for Parallel Machines
This paper describes a new approach to compiling and optimizing array languages for parallel machines. This approach rst decomposes array language operations into factors, where each factor corresponds to a diierent communication or computation structure. Optimizations are then achieved by combining, or joining, these factors. Because factors preserve high level information about array operatio...
متن کاملArray Language Support for Wavefront and Pipelined Computations
Array languages such as Fortran 90, High Performance Fortran and ZPL are convenient vehicles for expressing data parallel computation. Unfortunately, array language semantics prohibit the natural expression of wavefront and pipelined computations, characterized by a sequential propagation of computed values across one or more dimensions of the problem space. As a result, programmers scalarize (...
متن کاملZPL's WYSIWYG Performance Model
ZPL is a parallel array language designed for high performance scientific and engineering computations. Unlike other parallel languages, ZPL is founded on a machine model (the CTA) that accurately abstracts contemporary MIMD parallel computers. This makes it possible to correlate ZPL programs with machine behavior. As a result, programmers can reason about how code will perform on a typical par...
متن کاملRelative debugging for data-parallel programs: a ZPL case study
programs that execute on different platforms. By employing an architectureindependent implementation layer, the debugger is able to hide variations in data representation on these different platforms from the user. The case study we report represents the first time a relative debugger has been used to locate errors by comparing one program written in a data-parallel language to another written ...
متن کاملParallel Language Support for Multigrid Algorithms
Multigrid algorithms are a computational paradigm that enjoy widespread use in the scientific community. While parallel multigrid applications have been in use for quite some time, parallel language support for features common to multigrid algorithms has been lacking. This forces scientists either to express their computations in high-level terms without knowing the parallel impact, or to expli...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1993